package com.train.course.service;

import com.train.course.domain.VideoEpisode;

import java.util.List;

/**
 * 课程视频集 服务层接口
 */
public interface IVideoEpisodeService {

    /**
     * 查询视频集信息
     *
     * @param episodeId 视频集ID
     * @return 视频集信息
     */
    public VideoEpisode selectVideoEpisodeById(Long episodeId);

    /**
     * 查询视频集列表
     *
     * @param videoEpisode 视频集信息
     * @return 视频集集合
     */
    public List<VideoEpisode> selectVideoEpisodeList(VideoEpisode videoEpisode);

    /**
     * 根据课程ID查询视频集列表
     *
     * @param courseId 课程ID
     * @return 视频集集合
     */
    public List<VideoEpisode> selectVideoEpisodeListByCourseId(Long courseId);

    /**
     * 新增视频集
     *
     * @param videoEpisode 视频集信息
     * @return 结果
     */
    public int insertVideoEpisode(VideoEpisode videoEpisode);

    /**
     * 修改视频集
     *
     * @param videoEpisode 视频集信息
     * @return 结果
     */
    public int updateVideoEpisode(VideoEpisode videoEpisode);

    /**
     * 删除视频集信息
     *
     * @param episodeId 视频集ID
     * @return 结果
     */
    public int deleteVideoEpisodeById(Long episodeId);

    /**
     * 批量删除视频集信息
     *
     * @param episodeIds 需要删除的视频集ID数组
     * @return 结果
     */
    public int deleteVideoEpisodeByIds(Long[] episodeIds);
}